package com.rc.saas.mini.model.invoice;
import java.math.BigDecimal;
import java.util.Date;
import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import com.rc.saas.mini.common.base.BaseModel;
import org.springframework.format.annotation.DateTimeFormat;

/**
 * @Description 
 * @Author  
 * @Date: 2022-04-24
 */

@ApiModel(value=" invoice ", description=" 电子发票信息表（fin_invoice+invoice_add） ")
public class Invoice extends BaseModel{ 

    @ApiModelProperty(value = "ID")
    private Long invoiceId;
 
    @ApiModelProperty(value = "运营商")
    private String tenantCode;
 
    @ApiModelProperty(value = "会员ID")
    private Long memberId;
 
    @ApiModelProperty(value = "发票申请ID,关联invoice_apply表")
    private Long invoiceApplyId;
 
    @ApiModelProperty(value = "发票类型  0普通发票 1增值税专用发票 2增值税普通发票-电子发票 3增值税普通发票-纸质发票 默认0")
    private String invoiceType;
 
    @ApiModelProperty(value = "开票类型 0个人开票 1企业开票 默认0")
    private String invoiceNormalType;
 
    @ApiModelProperty(value = "发票抬头")
    private String invoiceTitle;
 
    @ApiModelProperty(value = "开票金额")
    private BigDecimal amount;
 
    @ApiModelProperty(value = "公司全称")
    private String companyName;
 
    @ApiModelProperty(value = "公司统一组织编码")
    private String companyCredit;
 
    @ApiModelProperty(value = "公司地址")
    private String companyAddress;
 
    @ApiModelProperty(value = "联系电话")
    private String companyTel;
 
    @ApiModelProperty(value = "开户行")
    private String companyBank;
 
    @ApiModelProperty(value = "公司银行账号")
    private String companyBankAccount;
 
    @ApiModelProperty(value = "省ID")
    private String provinceId;
 
    @ApiModelProperty(value = "市ID")
    private String cityId;
 
    @ApiModelProperty(value = "区ID")
    private String areaId;
 
    @ApiModelProperty(value = "详细地址")
    private String address;
 
    @ApiModelProperty(value = "注册地址")
    private String registerAddress;
 
    @ApiModelProperty(value = "注册电话")
    private String registerTel;
 
    @ApiModelProperty(value = "邮编")
    private String postcode;
 
    @ApiModelProperty(value = "营业执照副本复印件（盖公章）1")
    private String licenseImg1;
 
    @ApiModelProperty(value = "营业执照副本复印件（盖公章）2")
    private String licenseImg2;
 
    @ApiModelProperty(value = "营业执照副本复印件（盖公章）3")
    private String licenseImg3;
 
    @ApiModelProperty(value = "代开标记 0否 1是 默认0")
    private String proxyType;
 
    @ApiModelProperty(value = "发票请求唯一流水号 fpqqlsh")
    private String requestNo;
 
    @ApiModelProperty(value = "开票类型 0正票 1红票 默认 0 kplx")
    private String redType;
 
    @ApiModelProperty(value = "电子发票下载链接")
    private String pdfUrl;
 
    @ApiModelProperty(value = "开票日期 kprq")
    private String invoiceDate;
 
    @ApiModelProperty(value = "发票号码 fp_hm")
    private String invoiceNo;
 
    @ApiModelProperty(value = "发票代码 fp_dm")
    private String invoiceCode;
 
    @ApiModelProperty(value = "迁移时原ID（fin_invoice.id）")
    private Long migrateId;
 
    @ApiModelProperty(value = "创建人")
    private String createdBy;
 
    @ApiModelProperty(value = "创建时间")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss",timezone = "GMT+8")
    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private Date createdTime;
 
    @ApiModelProperty(value = "null")
    private String lastUpdatedBy;
 
    @ApiModelProperty(value = "null")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss",timezone = "GMT+8")
    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private Date lastUpdatedTime;
 
    public Long getInvoiceId() {
        return invoiceId;
    }

    public void setInvoiceId(Long invoiceId) {
        this.invoiceId = invoiceId;
    }

    public String getTenantCode() {
        return tenantCode;
    }

    public void setTenantCode(String tenantCode) {
        this.tenantCode = tenantCode;
    }

    public Long getMemberId() {
        return memberId;
    }

    public void setMemberId(Long memberId) {
        this.memberId = memberId;
    }

    public Long getInvoiceApplyId() {
        return invoiceApplyId;
    }

    public void setInvoiceApplyId(Long invoiceApplyId) {
        this.invoiceApplyId = invoiceApplyId;
    }

    public String getInvoiceType() {
        return invoiceType;
    }

    public void setInvoiceType(String invoiceType) {
        this.invoiceType = invoiceType;
    }

    public String getInvoiceNormalType() {
        return invoiceNormalType;
    }

    public void setInvoiceNormalType(String invoiceNormalType) {
        this.invoiceNormalType = invoiceNormalType;
    }

    public String getInvoiceTitle() {
        return invoiceTitle;
    }

    public void setInvoiceTitle(String invoiceTitle) {
        this.invoiceTitle = invoiceTitle;
    }

    public BigDecimal getAmount() {
        return amount;
    }

    public void setAmount(BigDecimal amount) {
        this.amount = amount;
    }

    public String getCompanyName() {
        return companyName;
    }

    public void setCompanyName(String companyName) {
        this.companyName = companyName;
    }

    public String getCompanyCredit() {
        return companyCredit;
    }

    public void setCompanyCredit(String companyCredit) {
        this.companyCredit = companyCredit;
    }

    public String getCompanyAddress() {
        return companyAddress;
    }

    public void setCompanyAddress(String companyAddress) {
        this.companyAddress = companyAddress;
    }

    public String getCompanyTel() {
        return companyTel;
    }

    public void setCompanyTel(String companyTel) {
        this.companyTel = companyTel;
    }

    public String getCompanyBank() {
        return companyBank;
    }

    public void setCompanyBank(String companyBank) {
        this.companyBank = companyBank;
    }

    public String getCompanyBankAccount() {
        return companyBankAccount;
    }

    public void setCompanyBankAccount(String companyBankAccount) {
        this.companyBankAccount = companyBankAccount;
    }

    public String getProvinceId() {
        return provinceId;
    }

    public void setProvinceId(String provinceId) {
        this.provinceId = provinceId;
    }

    public String getCityId() {
        return cityId;
    }

    public void setCityId(String cityId) {
        this.cityId = cityId;
    }

    public String getAreaId() {
        return areaId;
    }

    public void setAreaId(String areaId) {
        this.areaId = areaId;
    }

    public String getAddress() {
        return address;
    }

    public void setAddress(String address) {
        this.address = address;
    }

    public String getRegisterAddress() {
        return registerAddress;
    }

    public void setRegisterAddress(String registerAddress) {
        this.registerAddress = registerAddress;
    }

    public String getRegisterTel() {
        return registerTel;
    }

    public void setRegisterTel(String registerTel) {
        this.registerTel = registerTel;
    }

    public String getPostcode() {
        return postcode;
    }

    public void setPostcode(String postcode) {
        this.postcode = postcode;
    }

    public String getLicenseImg1() {
        return licenseImg1;
    }

    public void setLicenseImg1(String licenseImg1) {
        this.licenseImg1 = licenseImg1;
    }

    public String getLicenseImg2() {
        return licenseImg2;
    }

    public void setLicenseImg2(String licenseImg2) {
        this.licenseImg2 = licenseImg2;
    }

    public String getLicenseImg3() {
        return licenseImg3;
    }

    public void setLicenseImg3(String licenseImg3) {
        this.licenseImg3 = licenseImg3;
    }

    public String getProxyType() {
        return proxyType;
    }

    public void setProxyType(String proxyType) {
        this.proxyType = proxyType;
    }

    public String getRequestNo() {
        return requestNo;
    }

    public void setRequestNo(String requestNo) {
        this.requestNo = requestNo;
    }

    public String getRedType() {
        return redType;
    }

    public void setRedType(String redType) {
        this.redType = redType;
    }

    public String getPdfUrl() {
        return pdfUrl;
    }

    public void setPdfUrl(String pdfUrl) {
        this.pdfUrl = pdfUrl;
    }

    public String getInvoiceDate() {
        return invoiceDate;
    }

    public void setInvoiceDate(String invoiceDate) {
        this.invoiceDate = invoiceDate;
    }

    public String getInvoiceNo() {
        return invoiceNo;
    }

    public void setInvoiceNo(String invoiceNo) {
        this.invoiceNo = invoiceNo;
    }

    public String getInvoiceCode() {
        return invoiceCode;
    }

    public void setInvoiceCode(String invoiceCode) {
        this.invoiceCode = invoiceCode;
    }

    public Long getMigrateId() {
        return migrateId;
    }

    public void setMigrateId(Long migrateId) {
        this.migrateId = migrateId;
    }

    public String getCreatedBy() {
        return createdBy;
    }

    public void setCreatedBy(String createdBy) {
        this.createdBy = createdBy;
    }

    public Date getCreatedTime() {
        return createdTime;
    }

    public void setCreatedTime(Date createdTime) {
        this.createdTime = createdTime;
    }

    public String getLastUpdatedBy() {
        return lastUpdatedBy;
    }

    public void setLastUpdatedBy(String lastUpdatedBy) {
        this.lastUpdatedBy = lastUpdatedBy;
    }

    public Date getLastUpdatedTime() {
        return lastUpdatedTime;
    }

    public void setLastUpdatedTime(Date lastUpdatedTime) {
        this.lastUpdatedTime = lastUpdatedTime;
    }

}
